//
//  ViewController1.swift
//  UITableViewCellAutoFitRowHeight
//
//  Created by Xie Wei on 2020/1/3.
//  Copyright © 2020 Xie Wei. All rights reserved.
//

import UIKit

class ViewController1: UIViewController {
    
    let reuseIdentifier = NSStringFromClass(TableViewCell.self)
    lazy var tableView: UITableView = {
        let tableView = UITableView(frame: CGRect.zero, style: UITableView.Style.plain)
        // ------------------------------------
        // 1、设置UITableView属性
        tableView.rowHeight = UITableView.automaticDimension
        tableView.estimatedRowHeight = 300.0
        // ------------------------------------
        tableView.dataSource = self
        tableView.register(TableViewCell.self, forCellReuseIdentifier: reuseIdentifier)
        return tableView
    }()
    
    lazy var dataArr = ["我们经常在 PC 端使用各种 快捷键 来提高我们的办事效率；又或者 IDE 编写代码的过程中，利用 Live Templates 来快速输入常用代码。", "官网下载 AutoHotkey 应用程序进行安装，鼠标右键就可以新建一个 ahk 脚本文件。针对要实现的功能，用记事本编辑完脚本后，双击即可以运行脚本。通过脚本内预设的热键即可以自动化一系列操作。", "最简单的用法是自定义一系列热键，来快速打开一些常用的网站或者应用", "有些 IDE 可以通过设置 Live Template，快速编写重复的代码", "其实，AutoHotkey 脚本语言很强大，提供了很多实用的 API，可以快速开发出一些高效率工具，比如：计时器、秒杀器、颜色神偷、快速拷贝文件路径等等。"]
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        view.addSubview(tableView)
    }
    
    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        
        tableView.snp.makeConstraints { (make) in
            make.left.top.right.bottom.equalTo(view)
        }
    }
}

extension ViewController1: UITableViewDataSource {
    
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return dataArr.count
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: reuseIdentifier, for: indexPath) as! TableViewCell
        cell.update(dataArr[indexPath.row])
        return cell
    }
}


